{
 "cells": [
  {
   "cell_type": "code",
   "execution_count": 1,
   "metadata": {},
   "outputs": [],
   "source": [
    "from config import *"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "2020年4月\n"
     ]
    }
   ],
   "source": [
    "print(f'{year}年{month}月')"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": []
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "metadata": {},
   "outputs": [],
   "source": [
    "import pandas as pd\n",
    "import sys\n",
    "sys.path.append('..')\n",
    "sys.path.append('../py')\n",
    "sys.path.append('../../py')\n",
    "import db\n",
    "import inspect\n",
    "import matplotlib.pyplot as plt\n",
    "plt.rcParams['font.sans-serif']=['SimHei'] #用来正常显示中文标签\n",
    "plt.rcParams['axes.unicode_minus']=False #用来正常显示负号\n",
    "import seaborn as sns\n",
    "import scipy.stats as stats\n",
    "import numpy as np\n",
    "import weighted\n",
    "%matplotlib inline"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "metadata": {},
   "outputs": [],
   "source": [
    "conn=db.get_conn()\n",
    "data=pd.read_sql(sql=f\"select * from _{year}{month:02} where monthly_salary>0 and career='机器学习'  and monthly_salary<80000\", con=conn)\n",
    "conn.close()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "metadata": {},
   "outputs": [],
   "source": [
    "#del data['publish_date']\n",
    "#del data['published_on_weekend']\n",
    "#del data['title']\n",
    "#del data['title']\n",
    "#del data['company_title']\n",
    "#del data['company_description']\n",
    "#del data['job_description']\n",
    "#del data['job_id']"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>job_id</th>\n",
       "      <th>monthly_salary</th>\n",
       "      <th>headcount</th>\n",
       "      <th>title</th>\n",
       "      <th>zhinengleibie</th>\n",
       "      <th>career</th>\n",
       "      <th>real_province</th>\n",
       "      <th>province</th>\n",
       "      <th>city</th>\n",
       "      <th>company_id</th>\n",
       "      <th>...</th>\n",
       "      <th>bd_hbase</th>\n",
       "      <th>bd_storm</th>\n",
       "      <th>bd_pig</th>\n",
       "      <th>bd_mahout</th>\n",
       "      <th>bd_impala</th>\n",
       "      <th>bd_yarn</th>\n",
       "      <th>bd_alluxio</th>\n",
       "      <th>bd_flink</th>\n",
       "      <th>bd_presto</th>\n",
       "      <th>bd_heron</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>20</th>\n",
       "      <td>110043859</td>\n",
       "      <td>12500</td>\n",
       "      <td>31</td>\n",
       "      <td>机器学习开发工程师</td>\n",
       "      <td>高级软件工程师</td>\n",
       "      <td>机器学习</td>\n",
       "      <td>None</td>\n",
       "      <td>四川</td>\n",
       "      <td>成都</td>\n",
       "      <td>co4977334</td>\n",
       "      <td>...</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "      <td>False</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "<p>1 rows × 114 columns</p>\n",
       "</div>"
      ],
      "text/plain": [
       "       job_id  monthly_salary  headcount      title zhinengleibie career  \\\n",
       "20  110043859           12500         31  机器学习开发工程师       高级软件工程师   机器学习   \n",
       "\n",
       "   real_province province city company_id  ... bd_hbase bd_storm  bd_pig  \\\n",
       "20          None       四川   成都  co4977334  ...    False    False   False   \n",
       "\n",
       "   bd_mahout  bd_impala  bd_yarn bd_alluxio bd_flink bd_presto bd_heron  \n",
       "20     False      False    False      False    False     False    False  \n",
       "\n",
       "[1 rows x 114 columns]"
      ]
     },
     "execution_count": 6,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "data=data.sort_values(by='headcount', ascending=False)\n",
    "data.head(1)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "metadata": {},
   "outputs": [],
   "source": [
    "def pd_weighted_mean(group, avg_name, weight_name):\n",
    "    \"\"\" http://stackoverflow.com/questions/10951341/pandas-dataframe-aggregate-function-using-multiple-columns\n",
    "    In rare instance, we may not have weights, so just return the mean. Customize this if your business case\n",
    "    should return otherwise.\n",
    "    \"\"\"\n",
    "    d = group[avg_name]\n",
    "    w = group[weight_name]\n",
    "    try:\n",
    "        return (d * w).sum() / w.sum()\n",
    "    except ZeroDivisionError:\n",
    "        return d.mean()\n"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# Unilateral Stats 总体统计"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "有数据可知，程序员向一线城市集中的趋势非常明显。\n",
    "\n",
    "According to the statistics, significant amount of developers are in the first tier cities."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "(368, 114)"
      ]
     },
     "execution_count": 8,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "data.shape"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "1165"
      ]
     },
     "execution_count": 9,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "data.headcount.sum()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 10,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "array([ 5250., 12500., 17500., 27500., 58333.])"
      ]
     },
     "execution_count": 10,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "salary_mean=weighted.weighted_mean(data.monthly_salary.values, data.headcount.values)\n",
    "q=weighted.weighted_quantile(data.monthly_salary.values,[0.025,0.25,0.5,0.75,0.975], data.headcount.values)\n",
    "q"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 11,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "2020年4月中国机器学习工程师的平均工资为21344元，工资中位数为17500元，其中95%的人的工资位于5250到58333元之间。\n"
     ]
    }
   ],
   "source": [
    "print(f'{year}年{month}月中国机器学习工程师的平均工资为{salary_mean:.0f}元，工资中位数为{q[2]:.0f}元，其中95%的人的工资位于{q[0]:.0f}到{q[4]:.0f}元之间。')"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 12,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "In 2020, Developers in China earn 21344 Yuan as average, the median is 17500 Yuan, 95% of them earn between 5250 and 58333 Yuan.\n"
     ]
    }
   ],
   "source": [
    "print(f'In {year}, Developers in China earn {salary_mean:.0f} Yuan as average, '\n",
    "      f'the median is {q[2]:.0f} Yuan, 95% of them earn between {q[0]:.0f} and {q[4]:.0f} Yuan.')"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 13,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "data.monthly_salary.hist()\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "It does not look like normal distribution."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 14,
   "metadata": {},
   "outputs": [],
   "source": [
    "from scipy import stats"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Role 角色"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 15,
   "metadata": {},
   "outputs": [],
   "source": [
    "#Common Functions\n",
    "def get_sub_stats_by_col(data, col):\n",
    "    categories=data[col].unique()\n",
    "    salary_mean=[]\n",
    "    salary_95_min=[]\n",
    "    salary_95_max=[]\n",
    "    salary_median=[]\n",
    "    \n",
    "\n",
    "    count=[]\n",
    "    \n",
    "    categorys_out=[]\n",
    "    for category in categories:\n",
    "        #print(feature)\n",
    "        idata=data[data[col]==category]\n",
    "        headcount=idata.headcount.sum()\n",
    "        values = idata.monthly_salary.values\n",
    "        weights = idata.headcount.values\n",
    "        #print(str(headcount))\n",
    "        if headcount==0:\n",
    "            continue\n",
    "        \n",
    "        salary_mean.append(np.average(values, weights=weights))\n",
    "        \n",
    "\n",
    "        q = weighted.weighted_quantile(values,[0.025,0.5,0.975],weights)\n",
    "        salary_95_min.append(q[0])\n",
    "        salary_median.append(q[1])\n",
    "        salary_95_max.append(q[2])\n",
    "        count.append(idata.headcount.sum())\n",
    "        categorys_out.append(category)\n",
    "    sub_data=pd.DataFrame()\n",
    "    sub_data[col]=[c for c in categorys_out]\n",
    "    sub_data['salary_mean']=salary_mean\n",
    "    sub_data['salary_95_min']=salary_95_min\n",
    "    sub_data['salary_median']=salary_median\n",
    "    sub_data['salary_95_max']=salary_95_max\n",
    "    sub_data['head_count']=count\n",
    "    sub_data['percentage']=count/np.sum(count)\n",
    "    sub_data=sub_data.sort_values(by='salary_mean', ascending=False)\n",
    "\n",
    "    return sub_data\n",
    "\n",
    "def get_sub_stats_by_prefix(data, prefix):\n",
    "    \n",
    "    features = [feature for feature in data.columns if feature.startswith(prefix)]\n",
    "    salary_mean=[]\n",
    "    salary_median=[]\n",
    "    salary_95_min=[]\n",
    "    salary_95_max=[]\n",
    "    count=[]\n",
    "    \n",
    "    features_out=[]\n",
    "    for feature in features:\n",
    "        #print(feature)\n",
    "        idata=data[data[feature]==1]\n",
    "        headcount=idata.headcount.sum()\n",
    "        values = idata.monthly_salary.values\n",
    "        weights = idata.headcount.values\n",
    "        #print(str(headcount))\n",
    "        if headcount==0:\n",
    "            continue\n",
    "        \n",
    "        salary_mean.append(weighted.weighted_mean(values, weights))\n",
    "        q = weighted.weighted_quantile(values,[0.025,0.5,0.975],weights)\n",
    "        salary_median.append(q[1])\n",
    "        salary_95_min.append(q[0])\n",
    "        salary_95_max.append(q[2])\n",
    "        count.append(idata.headcount.sum())\n",
    "        features_out.append(feature)\n",
    "    sub_data=pd.DataFrame()\n",
    "    sub_data['rank']=range(0,len(features_out))\n",
    "    sub_data[prefix]=[f.replace(prefix,'') for f in features_out]\n",
    "    sub_data['salary_mean']=salary_mean\n",
    "    sub_data['salary_median']=salary_median\n",
    "    sub_data['salary_95_min']=salary_95_min\n",
    "    sub_data['salary_95_max']=salary_95_max\n",
    "    sub_data['head_count']=count\n",
    "    sub_data['percentage']=count/np.sum(count)\n",
    "    sub_data=sub_data.sort_values(by='salary_mean', ascending=False)\n",
    "    sub_data['rank']=range(1,len(features_out)+1)\n",
    "    #sub_data=sub_data.reset_index()\n",
    "    return sub_data\n",
    "\n",
    "def apply_style(sub_data):\n",
    "    return sub_data.style.hide_index().format(\n",
    "    {\"salary_mean\":\"{:.0f}\",\"salary_median\":\"{:.0f}\",\"salary_95_min\":\"{:.0f}\",\"salary_95_max\":\"{:.0f}\",\"percentage\":\"{:.2%}\"})"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 16,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<style  type=\"text/css\" >\n",
       "</style><table id=\"T_0ce2c950_7802_11ea_b6e5_701ce71031ef\" ><thead>    <tr>        <th class=\"blank level0\" ></th>        <th class=\"col_heading level0 col0\" >career</th>        <th class=\"col_heading level0 col1\" >salary_mean</th>        <th class=\"col_heading level0 col2\" >salary_95_min</th>        <th class=\"col_heading level0 col3\" >salary_median</th>        <th class=\"col_heading level0 col4\" >salary_95_max</th>        <th class=\"col_heading level0 col5\" >head_count</th>        <th class=\"col_heading level0 col6\" >percentage</th>    </tr></thead><tbody>\n",
       "                <tr>\n",
       "                        <th id=\"T_0ce2c950_7802_11ea_b6e5_701ce71031eflevel0_row0\" class=\"row_heading level0 row0\" >0</th>\n",
       "                        <td id=\"T_0ce2c950_7802_11ea_b6e5_701ce71031efrow0_col0\" class=\"data row0 col0\" >机器学习</td>\n",
       "                        <td id=\"T_0ce2c950_7802_11ea_b6e5_701ce71031efrow0_col1\" class=\"data row0 col1\" >21344</td>\n",
       "                        <td id=\"T_0ce2c950_7802_11ea_b6e5_701ce71031efrow0_col2\" class=\"data row0 col2\" >5250.000000</td>\n",
       "                        <td id=\"T_0ce2c950_7802_11ea_b6e5_701ce71031efrow0_col3\" class=\"data row0 col3\" >17500</td>\n",
       "                        <td id=\"T_0ce2c950_7802_11ea_b6e5_701ce71031efrow0_col4\" class=\"data row0 col4\" >58333.000000</td>\n",
       "                        <td id=\"T_0ce2c950_7802_11ea_b6e5_701ce71031efrow0_col5\" class=\"data row0 col5\" >1165</td>\n",
       "                        <td id=\"T_0ce2c950_7802_11ea_b6e5_701ce71031efrow0_col6\" class=\"data row0 col6\" >100.00%</td>\n",
       "            </tr>\n",
       "    </tbody></table>"
      ],
      "text/plain": [
       "<pandas.io.formats.style.Styler at 0x1ef06b90e48>"
      ]
     },
     "execution_count": 16,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "data_career = get_sub_stats_by_col(data,'career')\n",
    "data_career.style.format({\"salary_mean\":\"{:.0f}\",\"salary_median\":\"{:.0f}\",\"percentage\":\"{:.2%}\"})"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 17,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "21344.350214592276"
      ]
     },
     "execution_count": 17,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "np.sum(data.monthly_salary * data.headcount) / data.headcount.sum()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 18,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "1165"
      ]
     },
     "execution_count": 18,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "data.headcount.sum()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 19,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "count    368.000000\n",
       "mean       3.165761\n",
       "std        2.888900\n",
       "min        1.000000\n",
       "25%        1.000000\n",
       "50%        2.000000\n",
       "75%        5.000000\n",
       "max       31.000000\n",
       "Name: headcount, dtype: float64"
      ]
     },
     "execution_count": 19,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "data.headcount.describe()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 20,
   "metadata": {},
   "outputs": [],
   "source": [
    "pd.options.display.max_columns=100\n"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": []
  },
  {
   "cell_type": "code",
   "execution_count": 21,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "1165"
      ]
     },
     "execution_count": 21,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "data.headcount.sum()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# 城市"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 22,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<style  type=\"text/css\" >\n",
       "</style><table id=\"T_0cf0abf6_7802_11ea_8e71_701ce71031ef\" ><thead>    <tr>        <th class=\"col_heading level0 col0\" >city</th>        <th class=\"col_heading level0 col1\" >salary_mean</th>        <th class=\"col_heading level0 col2\" >salary_95_min</th>        <th class=\"col_heading level0 col3\" >salary_median</th>        <th class=\"col_heading level0 col4\" >salary_95_max</th>        <th class=\"col_heading level0 col5\" >head_count</th>        <th class=\"col_heading level0 col6\" >percentage</th>    </tr></thead><tbody>\n",
       "                <tr>\n",
       "                                <td id=\"T_0cf0abf6_7802_11ea_8e71_701ce71031efrow0_col0\" class=\"data row0 col0\" >深圳</td>\n",
       "                        <td id=\"T_0cf0abf6_7802_11ea_8e71_701ce71031efrow0_col1\" class=\"data row0 col1\" >27900</td>\n",
       "                        <td id=\"T_0cf0abf6_7802_11ea_8e71_701ce71031efrow0_col2\" class=\"data row0 col2\" >5859</td>\n",
       "                        <td id=\"T_0cf0abf6_7802_11ea_8e71_701ce71031efrow0_col3\" class=\"data row0 col3\" >27500</td>\n",
       "                        <td id=\"T_0cf0abf6_7802_11ea_8e71_701ce71031efrow0_col4\" class=\"data row0 col4\" >58333</td>\n",
       "                        <td id=\"T_0cf0abf6_7802_11ea_8e71_701ce71031efrow0_col5\" class=\"data row0 col5\" >178</td>\n",
       "                        <td id=\"T_0cf0abf6_7802_11ea_8e71_701ce71031efrow0_col6\" class=\"data row0 col6\" >15.28%</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                                <td id=\"T_0cf0abf6_7802_11ea_8e71_701ce71031efrow1_col0\" class=\"data row1 col0\" >北京</td>\n",
       "                        <td id=\"T_0cf0abf6_7802_11ea_8e71_701ce71031efrow1_col1\" class=\"data row1 col1\" >26853</td>\n",
       "                        <td id=\"T_0cf0abf6_7802_11ea_8e71_701ce71031efrow1_col2\" class=\"data row1 col2\" >5300</td>\n",
       "                        <td id=\"T_0cf0abf6_7802_11ea_8e71_701ce71031efrow1_col3\" class=\"data row1 col3\" >25000</td>\n",
       "                        <td id=\"T_0cf0abf6_7802_11ea_8e71_701ce71031efrow1_col4\" class=\"data row1 col4\" >57266</td>\n",
       "                        <td id=\"T_0cf0abf6_7802_11ea_8e71_701ce71031efrow1_col5\" class=\"data row1 col5\" >204</td>\n",
       "                        <td id=\"T_0cf0abf6_7802_11ea_8e71_701ce71031efrow1_col6\" class=\"data row1 col6\" >17.51%</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                                <td id=\"T_0cf0abf6_7802_11ea_8e71_701ce71031efrow2_col0\" class=\"data row2 col0\" >上海</td>\n",
       "                        <td id=\"T_0cf0abf6_7802_11ea_8e71_701ce71031efrow2_col1\" class=\"data row2 col1\" >22915</td>\n",
       "                        <td id=\"T_0cf0abf6_7802_11ea_8e71_701ce71031efrow2_col2\" class=\"data row2 col2\" >6195</td>\n",
       "                        <td id=\"T_0cf0abf6_7802_11ea_8e71_701ce71031efrow2_col3\" class=\"data row2 col3\" >22500</td>\n",
       "                        <td id=\"T_0cf0abf6_7802_11ea_8e71_701ce71031efrow2_col4\" class=\"data row2 col4\" >46575</td>\n",
       "                        <td id=\"T_0cf0abf6_7802_11ea_8e71_701ce71031efrow2_col5\" class=\"data row2 col5\" >282</td>\n",
       "                        <td id=\"T_0cf0abf6_7802_11ea_8e71_701ce71031efrow2_col6\" class=\"data row2 col6\" >24.21%</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                                <td id=\"T_0cf0abf6_7802_11ea_8e71_701ce71031efrow3_col0\" class=\"data row3 col0\" >广州</td>\n",
       "                        <td id=\"T_0cf0abf6_7802_11ea_8e71_701ce71031efrow3_col1\" class=\"data row3 col1\" >17043</td>\n",
       "                        <td id=\"T_0cf0abf6_7802_11ea_8e71_701ce71031efrow3_col2\" class=\"data row3 col2\" >5073</td>\n",
       "                        <td id=\"T_0cf0abf6_7802_11ea_8e71_701ce71031efrow3_col3\" class=\"data row3 col3\" >15000</td>\n",
       "                        <td id=\"T_0cf0abf6_7802_11ea_8e71_701ce71031efrow3_col4\" class=\"data row3 col4\" >38475</td>\n",
       "                        <td id=\"T_0cf0abf6_7802_11ea_8e71_701ce71031efrow3_col5\" class=\"data row3 col5\" >161</td>\n",
       "                        <td id=\"T_0cf0abf6_7802_11ea_8e71_701ce71031efrow3_col6\" class=\"data row3 col6\" >13.82%</td>\n",
       "            </tr>\n",
       "    </tbody></table>"
      ],
      "text/plain": [
       "<pandas.io.formats.style.Styler at 0x1ef06b8e088>"
      ]
     },
     "execution_count": 22,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "data_pl=get_sub_stats_by_col(data,'city')\n",
    "data_pl=data_pl[data_pl['head_count']>100]\n",
    "apply_style(data_pl)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 23,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "0.29184549356223166"
      ]
     },
     "execution_count": 23,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "other=1-data_pl['percentage'].sum()\n",
    "other"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 24,
   "metadata": {},
   "outputs": [],
   "source": [
    "head_counts=list(data_pl['percentage'].values)\n",
    "head_counts.append(other)\n",
    "head_counts\n",
    "\n",
    "labels=list(data_pl['city'].values)\n",
    "labels.append('其他')"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 25,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 720x576 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "\n",
    "plt.figure(figsize=(10,8))\n",
    "plt.pie(head_counts, labels=labels, autopct='%1.1f%%')\n",
    "plt.title(f'算法工程师去哪里')\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# 编程语言"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 26,
   "metadata": {
    "scrolled": true
   },
   "outputs": [
    {
     "data": {
      "text/html": [
       "<style  type=\"text/css\" >\n",
       "</style><table id=\"T_0d03bec6_7802_11ea_a658_701ce71031ef\" ><thead>    <tr>        <th class=\"col_heading level0 col0\" >rank</th>        <th class=\"col_heading level0 col1\" >pl_</th>        <th class=\"col_heading level0 col2\" >salary_mean</th>        <th class=\"col_heading level0 col3\" >salary_median</th>        <th class=\"col_heading level0 col4\" >salary_95_min</th>        <th class=\"col_heading level0 col5\" >salary_95_max</th>        <th class=\"col_heading level0 col6\" >head_count</th>        <th class=\"col_heading level0 col7\" >percentage</th>    </tr></thead><tbody>\n",
       "                <tr>\n",
       "                                <td id=\"T_0d03bec6_7802_11ea_a658_701ce71031efrow0_col0\" class=\"data row0 col0\" >1</td>\n",
       "                        <td id=\"T_0d03bec6_7802_11ea_a658_701ce71031efrow0_col1\" class=\"data row0 col1\" >r</td>\n",
       "                        <td id=\"T_0d03bec6_7802_11ea_a658_701ce71031efrow0_col2\" class=\"data row0 col2\" >30711</td>\n",
       "                        <td id=\"T_0d03bec6_7802_11ea_a658_701ce71031efrow0_col3\" class=\"data row0 col3\" >30555</td>\n",
       "                        <td id=\"T_0d03bec6_7802_11ea_a658_701ce71031efrow0_col4\" class=\"data row0 col4\" >15000</td>\n",
       "                        <td id=\"T_0d03bec6_7802_11ea_a658_701ce71031efrow0_col5\" class=\"data row0 col5\" >58333</td>\n",
       "                        <td id=\"T_0d03bec6_7802_11ea_a658_701ce71031efrow0_col6\" class=\"data row0 col6\" >112</td>\n",
       "                        <td id=\"T_0d03bec6_7802_11ea_a658_701ce71031efrow0_col7\" class=\"data row0 col7\" >5.77%</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                                <td id=\"T_0d03bec6_7802_11ea_a658_701ce71031efrow1_col0\" class=\"data row1 col0\" >2</td>\n",
       "                        <td id=\"T_0d03bec6_7802_11ea_a658_701ce71031efrow1_col1\" class=\"data row1 col1\" >matlab</td>\n",
       "                        <td id=\"T_0d03bec6_7802_11ea_a658_701ce71031efrow1_col2\" class=\"data row1 col2\" >28497</td>\n",
       "                        <td id=\"T_0d03bec6_7802_11ea_a658_701ce71031efrow1_col3\" class=\"data row1 col3\" >25000</td>\n",
       "                        <td id=\"T_0d03bec6_7802_11ea_a658_701ce71031efrow1_col4\" class=\"data row1 col4\" >7000</td>\n",
       "                        <td id=\"T_0d03bec6_7802_11ea_a658_701ce71031efrow1_col5\" class=\"data row1 col5\" >61986</td>\n",
       "                        <td id=\"T_0d03bec6_7802_11ea_a658_701ce71031efrow1_col6\" class=\"data row1 col6\" >137</td>\n",
       "                        <td id=\"T_0d03bec6_7802_11ea_a658_701ce71031efrow1_col7\" class=\"data row1 col7\" >7.06%</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                                <td id=\"T_0d03bec6_7802_11ea_a658_701ce71031efrow2_col0\" class=\"data row2 col0\" >5</td>\n",
       "                        <td id=\"T_0d03bec6_7802_11ea_a658_701ce71031efrow2_col1\" class=\"data row2 col1\" >go</td>\n",
       "                        <td id=\"T_0d03bec6_7802_11ea_a658_701ce71031efrow2_col2\" class=\"data row2 col2\" >24122</td>\n",
       "                        <td id=\"T_0d03bec6_7802_11ea_a658_701ce71031efrow2_col3\" class=\"data row2 col3\" >21706</td>\n",
       "                        <td id=\"T_0d03bec6_7802_11ea_a658_701ce71031efrow2_col4\" class=\"data row2 col4\" >5547</td>\n",
       "                        <td id=\"T_0d03bec6_7802_11ea_a658_701ce71031efrow2_col5\" class=\"data row2 col5\" >39854</td>\n",
       "                        <td id=\"T_0d03bec6_7802_11ea_a658_701ce71031efrow2_col6\" class=\"data row2 col6\" >67</td>\n",
       "                        <td id=\"T_0d03bec6_7802_11ea_a658_701ce71031efrow2_col7\" class=\"data row2 col7\" >3.45%</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                                <td id=\"T_0d03bec6_7802_11ea_a658_701ce71031efrow3_col0\" class=\"data row3 col0\" >6</td>\n",
       "                        <td id=\"T_0d03bec6_7802_11ea_a658_701ce71031efrow3_col1\" class=\"data row3 col1\" >java</td>\n",
       "                        <td id=\"T_0d03bec6_7802_11ea_a658_701ce71031efrow3_col2\" class=\"data row3 col2\" >23546</td>\n",
       "                        <td id=\"T_0d03bec6_7802_11ea_a658_701ce71031efrow3_col3\" class=\"data row3 col3\" >20682</td>\n",
       "                        <td id=\"T_0d03bec6_7802_11ea_a658_701ce71031efrow3_col4\" class=\"data row3 col4\" >9000</td>\n",
       "                        <td id=\"T_0d03bec6_7802_11ea_a658_701ce71031efrow3_col5\" class=\"data row3 col5\" >58333</td>\n",
       "                        <td id=\"T_0d03bec6_7802_11ea_a658_701ce71031efrow3_col6\" class=\"data row3 col6\" >280</td>\n",
       "                        <td id=\"T_0d03bec6_7802_11ea_a658_701ce71031efrow3_col7\" class=\"data row3 col7\" >14.43%</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                                <td id=\"T_0d03bec6_7802_11ea_a658_701ce71031efrow4_col0\" class=\"data row4 col0\" >7</td>\n",
       "                        <td id=\"T_0d03bec6_7802_11ea_a658_701ce71031efrow4_col1\" class=\"data row4 col1\" >scala</td>\n",
       "                        <td id=\"T_0d03bec6_7802_11ea_a658_701ce71031efrow4_col2\" class=\"data row4 col2\" >23392</td>\n",
       "                        <td id=\"T_0d03bec6_7802_11ea_a658_701ce71031efrow4_col3\" class=\"data row4 col3\" >22167</td>\n",
       "                        <td id=\"T_0d03bec6_7802_11ea_a658_701ce71031efrow4_col4\" class=\"data row4 col4\" >17500</td>\n",
       "                        <td id=\"T_0d03bec6_7802_11ea_a658_701ce71031efrow4_col5\" class=\"data row4 col5\" >31500</td>\n",
       "                        <td id=\"T_0d03bec6_7802_11ea_a658_701ce71031efrow4_col6\" class=\"data row4 col6\" >54</td>\n",
       "                        <td id=\"T_0d03bec6_7802_11ea_a658_701ce71031efrow4_col7\" class=\"data row4 col7\" >2.78%</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                                <td id=\"T_0d03bec6_7802_11ea_a658_701ce71031efrow5_col0\" class=\"data row5 col0\" >8</td>\n",
       "                        <td id=\"T_0d03bec6_7802_11ea_a658_701ce71031efrow5_col1\" class=\"data row5 col1\" >cpp</td>\n",
       "                        <td id=\"T_0d03bec6_7802_11ea_a658_701ce71031efrow5_col2\" class=\"data row5 col2\" >22790</td>\n",
       "                        <td id=\"T_0d03bec6_7802_11ea_a658_701ce71031efrow5_col3\" class=\"data row5 col3\" >20000</td>\n",
       "                        <td id=\"T_0d03bec6_7802_11ea_a658_701ce71031efrow5_col4\" class=\"data row5 col4\" >5250</td>\n",
       "                        <td id=\"T_0d03bec6_7802_11ea_a658_701ce71031efrow5_col5\" class=\"data row5 col5\" >58333</td>\n",
       "                        <td id=\"T_0d03bec6_7802_11ea_a658_701ce71031efrow5_col6\" class=\"data row5 col6\" >529</td>\n",
       "                        <td id=\"T_0d03bec6_7802_11ea_a658_701ce71031efrow5_col7\" class=\"data row5 col7\" >27.27%</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                                <td id=\"T_0d03bec6_7802_11ea_a658_701ce71031efrow6_col0\" class=\"data row6 col0\" >10</td>\n",
       "                        <td id=\"T_0d03bec6_7802_11ea_a658_701ce71031efrow6_col1\" class=\"data row6 col1\" >python</td>\n",
       "                        <td id=\"T_0d03bec6_7802_11ea_a658_701ce71031efrow6_col2\" class=\"data row6 col2\" >22197</td>\n",
       "                        <td id=\"T_0d03bec6_7802_11ea_a658_701ce71031efrow6_col3\" class=\"data row6 col3\" >20000</td>\n",
       "                        <td id=\"T_0d03bec6_7802_11ea_a658_701ce71031efrow6_col4\" class=\"data row6 col4\" >5250</td>\n",
       "                        <td id=\"T_0d03bec6_7802_11ea_a658_701ce71031efrow6_col5\" class=\"data row6 col5\" >58333</td>\n",
       "                        <td id=\"T_0d03bec6_7802_11ea_a658_701ce71031efrow6_col6\" class=\"data row6 col6\" >683</td>\n",
       "                        <td id=\"T_0d03bec6_7802_11ea_a658_701ce71031efrow6_col7\" class=\"data row6 col7\" >35.21%</td>\n",
       "            </tr>\n",
       "    </tbody></table>"
      ],
      "text/plain": [
       "<pandas.io.formats.style.Styler at 0x1ef06d00cc8>"
      ]
     },
     "execution_count": 26,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "data_pl=get_sub_stats_by_prefix(data,'pl_')\n",
    "data_pl=data_pl[data_pl['head_count']>50]\n",
    "apply_style(data_pl)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 27,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 720x576 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "head_counts=list(data_pl['percentage'].values)\n",
    "head_counts.append(other)\n",
    "head_counts\n",
    "\n",
    "labels=list(data_pl['pl_'].values)\n",
    "labels.append('其他')\n",
    "\n",
    "plt.figure(figsize=(10,8))\n",
    "plt.pie(head_counts, labels=labels, autopct='%1.0f%%')\n",
    "plt.title(f'算法工程师的编程语言')\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## 大数据工具 "
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 28,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<style  type=\"text/css\" >\n",
       "</style><table id=\"T_0d1746dc_7802_11ea_8484_701ce71031ef\" ><thead>    <tr>        <th class=\"col_heading level0 col0\" >rank</th>        <th class=\"col_heading level0 col1\" >bd_</th>        <th class=\"col_heading level0 col2\" >salary_mean</th>        <th class=\"col_heading level0 col3\" >salary_median</th>        <th class=\"col_heading level0 col4\" >salary_95_min</th>        <th class=\"col_heading level0 col5\" >salary_95_max</th>        <th class=\"col_heading level0 col6\" >head_count</th>        <th class=\"col_heading level0 col7\" >percentage</th>    </tr></thead><tbody>\n",
       "                <tr>\n",
       "                                <td id=\"T_0d1746dc_7802_11ea_8484_701ce71031efrow0_col0\" class=\"data row0 col0\" >2</td>\n",
       "                        <td id=\"T_0d1746dc_7802_11ea_8484_701ce71031efrow0_col1\" class=\"data row0 col1\" >hive</td>\n",
       "                        <td id=\"T_0d1746dc_7802_11ea_8484_701ce71031efrow0_col2\" class=\"data row0 col2\" >29815</td>\n",
       "                        <td id=\"T_0d1746dc_7802_11ea_8484_701ce71031efrow0_col3\" class=\"data row0 col3\" >30000</td>\n",
       "                        <td id=\"T_0d1746dc_7802_11ea_8484_701ce71031efrow0_col4\" class=\"data row0 col4\" >12500</td>\n",
       "                        <td id=\"T_0d1746dc_7802_11ea_8484_701ce71031efrow0_col5\" class=\"data row0 col5\" >55750</td>\n",
       "                        <td id=\"T_0d1746dc_7802_11ea_8484_701ce71031efrow0_col6\" class=\"data row0 col6\" >54</td>\n",
       "                        <td id=\"T_0d1746dc_7802_11ea_8484_701ce71031efrow0_col7\" class=\"data row0 col7\" >14.44%</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                                <td id=\"T_0d1746dc_7802_11ea_8484_701ce71031efrow1_col0\" class=\"data row1 col0\" >3</td>\n",
       "                        <td id=\"T_0d1746dc_7802_11ea_8484_701ce71031efrow1_col1\" class=\"data row1 col1\" >flink</td>\n",
       "                        <td id=\"T_0d1746dc_7802_11ea_8484_701ce71031efrow1_col2\" class=\"data row1 col2\" >27400</td>\n",
       "                        <td id=\"T_0d1746dc_7802_11ea_8484_701ce71031efrow1_col3\" class=\"data row1 col3\" >24375</td>\n",
       "                        <td id=\"T_0d1746dc_7802_11ea_8484_701ce71031efrow1_col4\" class=\"data row1 col4\" >15000</td>\n",
       "                        <td id=\"T_0d1746dc_7802_11ea_8484_701ce71031efrow1_col5\" class=\"data row1 col5\" >40000</td>\n",
       "                        <td id=\"T_0d1746dc_7802_11ea_8484_701ce71031efrow1_col6\" class=\"data row1 col6\" >25</td>\n",
       "                        <td id=\"T_0d1746dc_7802_11ea_8484_701ce71031efrow1_col7\" class=\"data row1 col7\" >6.68%</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                                <td id=\"T_0d1746dc_7802_11ea_8484_701ce71031efrow2_col0\" class=\"data row2 col0\" >4</td>\n",
       "                        <td id=\"T_0d1746dc_7802_11ea_8484_701ce71031efrow2_col1\" class=\"data row2 col1\" >spark</td>\n",
       "                        <td id=\"T_0d1746dc_7802_11ea_8484_701ce71031efrow2_col2\" class=\"data row2 col2\" >25555</td>\n",
       "                        <td id=\"T_0d1746dc_7802_11ea_8484_701ce71031efrow2_col3\" class=\"data row2 col3\" >24750</td>\n",
       "                        <td id=\"T_0d1746dc_7802_11ea_8484_701ce71031efrow2_col4\" class=\"data row2 col4\" >5129</td>\n",
       "                        <td id=\"T_0d1746dc_7802_11ea_8484_701ce71031efrow2_col5\" class=\"data row2 col5\" >45000</td>\n",
       "                        <td id=\"T_0d1746dc_7802_11ea_8484_701ce71031efrow2_col6\" class=\"data row2 col6\" >156</td>\n",
       "                        <td id=\"T_0d1746dc_7802_11ea_8484_701ce71031efrow2_col7\" class=\"data row2 col7\" >41.71%</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                                <td id=\"T_0d1746dc_7802_11ea_8484_701ce71031efrow3_col0\" class=\"data row3 col0\" >5</td>\n",
       "                        <td id=\"T_0d1746dc_7802_11ea_8484_701ce71031efrow3_col1\" class=\"data row3 col1\" >storm</td>\n",
       "                        <td id=\"T_0d1746dc_7802_11ea_8484_701ce71031efrow3_col2\" class=\"data row3 col2\" >24615</td>\n",
       "                        <td id=\"T_0d1746dc_7802_11ea_8484_701ce71031efrow3_col3\" class=\"data row3 col3\" >35357</td>\n",
       "                        <td id=\"T_0d1746dc_7802_11ea_8484_701ce71031efrow3_col4\" class=\"data row3 col4\" >4500</td>\n",
       "                        <td id=\"T_0d1746dc_7802_11ea_8484_701ce71031efrow3_col5\" class=\"data row3 col5\" >40000</td>\n",
       "                        <td id=\"T_0d1746dc_7802_11ea_8484_701ce71031efrow3_col6\" class=\"data row3 col6\" >13</td>\n",
       "                        <td id=\"T_0d1746dc_7802_11ea_8484_701ce71031efrow3_col7\" class=\"data row3 col7\" >3.48%</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                                <td id=\"T_0d1746dc_7802_11ea_8484_701ce71031efrow4_col0\" class=\"data row4 col0\" >6</td>\n",
       "                        <td id=\"T_0d1746dc_7802_11ea_8484_701ce71031efrow4_col1\" class=\"data row4 col1\" >hadoop</td>\n",
       "                        <td id=\"T_0d1746dc_7802_11ea_8484_701ce71031efrow4_col2\" class=\"data row4 col2\" >24357</td>\n",
       "                        <td id=\"T_0d1746dc_7802_11ea_8484_701ce71031efrow4_col3\" class=\"data row4 col3\" >25000</td>\n",
       "                        <td id=\"T_0d1746dc_7802_11ea_8484_701ce71031efrow4_col4\" class=\"data row4 col4\" >3652</td>\n",
       "                        <td id=\"T_0d1746dc_7802_11ea_8484_701ce71031efrow4_col5\" class=\"data row4 col5\" >39511</td>\n",
       "                        <td id=\"T_0d1746dc_7802_11ea_8484_701ce71031efrow4_col6\" class=\"data row4 col6\" >103</td>\n",
       "                        <td id=\"T_0d1746dc_7802_11ea_8484_701ce71031efrow4_col7\" class=\"data row4 col7\" >27.54%</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                                <td id=\"T_0d1746dc_7802_11ea_8484_701ce71031efrow5_col0\" class=\"data row5 col0\" >9</td>\n",
       "                        <td id=\"T_0d1746dc_7802_11ea_8484_701ce71031efrow5_col1\" class=\"data row5 col1\" >hbase</td>\n",
       "                        <td id=\"T_0d1746dc_7802_11ea_8484_701ce71031efrow5_col2\" class=\"data row5 col2\" >19906</td>\n",
       "                        <td id=\"T_0d1746dc_7802_11ea_8484_701ce71031efrow5_col3\" class=\"data row5 col3\" >15000</td>\n",
       "                        <td id=\"T_0d1746dc_7802_11ea_8484_701ce71031efrow5_col4\" class=\"data row5 col4\" >12500</td>\n",
       "                        <td id=\"T_0d1746dc_7802_11ea_8484_701ce71031efrow5_col5\" class=\"data row5 col5\" >60000</td>\n",
       "                        <td id=\"T_0d1746dc_7802_11ea_8484_701ce71031efrow5_col6\" class=\"data row5 col6\" >16</td>\n",
       "                        <td id=\"T_0d1746dc_7802_11ea_8484_701ce71031efrow5_col7\" class=\"data row5 col7\" >4.28%</td>\n",
       "            </tr>\n",
       "    </tbody></table>"
      ],
      "text/plain": [
       "<pandas.io.formats.style.Styler at 0x1ef06eaec48>"
      ]
     },
     "execution_count": 28,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "data_pl=get_sub_stats_by_prefix(data,'bd_')\n",
    "data_pl=data_pl[data_pl['head_count']>10]\n",
    "apply_style(data_pl)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 29,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 720x576 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "other=1-data_pl['percentage'].values.sum()\n",
    "head_counts=list(data_pl['percentage'].values)\n",
    "head_counts.append(other)\n",
    "head_counts\n",
    "\n",
    "labels=list(data_pl['bd_'].values)\n",
    "labels.append('其他')\n",
    "\n",
    "plt.figure(figsize=(10,8))\n",
    "plt.pie(head_counts, labels=labels, autopct='%1.0f%%')\n",
    "plt.title(f'算法工程师的大数据工具')\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## 机器学习工具 "
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 30,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<style  type=\"text/css\" >\n",
       "</style><table id=\"T_0d2db50c_7802_11ea_aaea_701ce71031ef\" ><thead>    <tr>        <th class=\"col_heading level0 col0\" >rank</th>        <th class=\"col_heading level0 col1\" >ml_</th>        <th class=\"col_heading level0 col2\" >salary_mean</th>        <th class=\"col_heading level0 col3\" >salary_median</th>        <th class=\"col_heading level0 col4\" >salary_95_min</th>        <th class=\"col_heading level0 col5\" >salary_95_max</th>        <th class=\"col_heading level0 col6\" >head_count</th>        <th class=\"col_heading level0 col7\" >percentage</th>    </tr></thead><tbody>\n",
       "                <tr>\n",
       "                                <td id=\"T_0d2db50c_7802_11ea_aaea_701ce71031efrow0_col0\" class=\"data row0 col0\" >1</td>\n",
       "                        <td id=\"T_0d2db50c_7802_11ea_aaea_701ce71031efrow0_col1\" class=\"data row0 col1\" >mxnet</td>\n",
       "                        <td id=\"T_0d2db50c_7802_11ea_aaea_701ce71031efrow0_col2\" class=\"data row0 col2\" >30599</td>\n",
       "                        <td id=\"T_0d2db50c_7802_11ea_aaea_701ce71031efrow0_col3\" class=\"data row0 col3\" >22273</td>\n",
       "                        <td id=\"T_0d2db50c_7802_11ea_aaea_701ce71031efrow0_col4\" class=\"data row0 col4\" >12975</td>\n",
       "                        <td id=\"T_0d2db50c_7802_11ea_aaea_701ce71031efrow0_col5\" class=\"data row0 col5\" >61688</td>\n",
       "                        <td id=\"T_0d2db50c_7802_11ea_aaea_701ce71031efrow0_col6\" class=\"data row0 col6\" >139</td>\n",
       "                        <td id=\"T_0d2db50c_7802_11ea_aaea_701ce71031efrow0_col7\" class=\"data row0 col7\" >11.95%</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                                <td id=\"T_0d2db50c_7802_11ea_aaea_701ce71031efrow1_col0\" class=\"data row1 col0\" >3</td>\n",
       "                        <td id=\"T_0d2db50c_7802_11ea_aaea_701ce71031efrow1_col1\" class=\"data row1 col1\" >caffe</td>\n",
       "                        <td id=\"T_0d2db50c_7802_11ea_aaea_701ce71031efrow1_col2\" class=\"data row1 col2\" >26174</td>\n",
       "                        <td id=\"T_0d2db50c_7802_11ea_aaea_701ce71031efrow1_col3\" class=\"data row1 col3\" >20912</td>\n",
       "                        <td id=\"T_0d2db50c_7802_11ea_aaea_701ce71031efrow1_col4\" class=\"data row1 col4\" >11617</td>\n",
       "                        <td id=\"T_0d2db50c_7802_11ea_aaea_701ce71031efrow1_col5\" class=\"data row1 col5\" >59947</td>\n",
       "                        <td id=\"T_0d2db50c_7802_11ea_aaea_701ce71031efrow1_col6\" class=\"data row1 col6\" >227</td>\n",
       "                        <td id=\"T_0d2db50c_7802_11ea_aaea_701ce71031efrow1_col7\" class=\"data row1 col7\" >19.52%</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                                <td id=\"T_0d2db50c_7802_11ea_aaea_701ce71031efrow2_col0\" class=\"data row2 col0\" >5</td>\n",
       "                        <td id=\"T_0d2db50c_7802_11ea_aaea_701ce71031efrow2_col1\" class=\"data row2 col1\" >tensorflow</td>\n",
       "                        <td id=\"T_0d2db50c_7802_11ea_aaea_701ce71031efrow2_col2\" class=\"data row2 col2\" >24958</td>\n",
       "                        <td id=\"T_0d2db50c_7802_11ea_aaea_701ce71031efrow2_col3\" class=\"data row2 col3\" >20833</td>\n",
       "                        <td id=\"T_0d2db50c_7802_11ea_aaea_701ce71031efrow2_col4\" class=\"data row2 col4\" >11469</td>\n",
       "                        <td id=\"T_0d2db50c_7802_11ea_aaea_701ce71031efrow2_col5\" class=\"data row2 col5\" >58560</td>\n",
       "                        <td id=\"T_0d2db50c_7802_11ea_aaea_701ce71031efrow2_col6\" class=\"data row2 col6\" >410</td>\n",
       "                        <td id=\"T_0d2db50c_7802_11ea_aaea_701ce71031efrow2_col7\" class=\"data row2 col7\" >35.25%</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                                <td id=\"T_0d2db50c_7802_11ea_aaea_701ce71031efrow3_col0\" class=\"data row3 col0\" >6</td>\n",
       "                        <td id=\"T_0d2db50c_7802_11ea_aaea_701ce71031efrow3_col1\" class=\"data row3 col1\" >pytorch</td>\n",
       "                        <td id=\"T_0d2db50c_7802_11ea_aaea_701ce71031efrow3_col2\" class=\"data row3 col2\" >23142</td>\n",
       "                        <td id=\"T_0d2db50c_7802_11ea_aaea_701ce71031efrow3_col3\" class=\"data row3 col3\" >20000</td>\n",
       "                        <td id=\"T_0d2db50c_7802_11ea_aaea_701ce71031efrow3_col4\" class=\"data row3 col4\" >12038</td>\n",
       "                        <td id=\"T_0d2db50c_7802_11ea_aaea_701ce71031efrow3_col5\" class=\"data row3 col5\" >53725</td>\n",
       "                        <td id=\"T_0d2db50c_7802_11ea_aaea_701ce71031efrow3_col6\" class=\"data row3 col6\" >178</td>\n",
       "                        <td id=\"T_0d2db50c_7802_11ea_aaea_701ce71031efrow3_col7\" class=\"data row3 col7\" >15.31%</td>\n",
       "            </tr>\n",
       "    </tbody></table>"
      ],
      "text/plain": [
       "<pandas.io.formats.style.Styler at 0x1ef0701cd88>"
      ]
     },
     "execution_count": 30,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "data_pl=get_sub_stats_by_prefix(data,'ml_')\n",
    "data_pl=data_pl[data_pl['head_count']>100]\n",
    "apply_style(data_pl)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 31,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "0.820292347377472"
      ]
     },
     "execution_count": 31,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "data_pl['percentage'].values.sum()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 32,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 720x576 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "other=1-data_pl['percentage'].values.sum()\n",
    "head_counts=list(data_pl['percentage'].values)\n",
    "head_counts.append(other)\n",
    "head_counts\n",
    "\n",
    "labels=list(data_pl['ml_'].values)\n",
    "labels.append('其他')\n",
    "\n",
    "plt.figure(figsize=(10,8))\n",
    "plt.pie(head_counts, labels=labels, autopct='%1.0f%%')\n",
    "plt.title(f'算法工程师的机器学习库')\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## 英语"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  },
  {
   "cell_type": "code",
   "execution_count": 33,
   "metadata": {},
   "outputs": [],
   "source": [
    "all_=data.shape[0]\n",
    "en=data[data['english']==1].shape[0]\n",
    "other=all_-en"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 34,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 720x576 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "plt.figure(figsize=(10,8))\n",
    "plt.pie([en,other], labels=['要求英语','没说'])\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# 教育"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 35,
   "metadata": {},
   "outputs": [],
   "source": [
    "edu_counts=data[~(data.edu=='')].groupby(by=['edu']).headcount.sum()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 36,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "edu\n",
       "初中及以下      1\n",
       "博士        42\n",
       "大专        72\n",
       "本科       666\n",
       "硕士       309\n",
       "高中         2\n",
       "Name: headcount, dtype: int64"
      ]
     },
     "execution_count": 36,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "edu_counts"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 37,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 720x576 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "plt.figure(figsize=(10,8))\n",
    "plt.pie(edu_counts.values, labels=edu_counts.index, autopct='%1.1f%%')\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 38,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<style  type=\"text/css\" >\n",
       "</style><table id=\"T_0d719be4_7802_11ea_83b2_701ce71031ef\" ><thead>    <tr>        <th class=\"col_heading level0 col0\" >edu</th>        <th class=\"col_heading level0 col1\" >salary_mean</th>        <th class=\"col_heading level0 col2\" >salary_95_min</th>        <th class=\"col_heading level0 col3\" >salary_median</th>        <th class=\"col_heading level0 col4\" >salary_95_max</th>        <th class=\"col_heading level0 col5\" >head_count</th>        <th class=\"col_heading level0 col6\" >percentage</th>    </tr></thead><tbody>\n",
       "                <tr>\n",
       "                                <td id=\"T_0d719be4_7802_11ea_83b2_701ce71031efrow0_col0\" class=\"data row0 col0\" >博士</td>\n",
       "                        <td id=\"T_0d719be4_7802_11ea_83b2_701ce71031efrow0_col1\" class=\"data row0 col1\" >26353</td>\n",
       "                        <td id=\"T_0d719be4_7802_11ea_83b2_701ce71031efrow0_col2\" class=\"data row0 col2\" >13056</td>\n",
       "                        <td id=\"T_0d719be4_7802_11ea_83b2_701ce71031efrow0_col3\" class=\"data row0 col3\" >26354</td>\n",
       "                        <td id=\"T_0d719be4_7802_11ea_83b2_701ce71031efrow0_col4\" class=\"data row0 col4\" >40000</td>\n",
       "                        <td id=\"T_0d719be4_7802_11ea_83b2_701ce71031efrow0_col5\" class=\"data row0 col5\" >42</td>\n",
       "                        <td id=\"T_0d719be4_7802_11ea_83b2_701ce71031efrow0_col6\" class=\"data row0 col6\" >3.85%</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                                <td id=\"T_0d719be4_7802_11ea_83b2_701ce71031efrow1_col0\" class=\"data row1 col0\" >硕士</td>\n",
       "                        <td id=\"T_0d719be4_7802_11ea_83b2_701ce71031efrow1_col1\" class=\"data row1 col1\" >22556</td>\n",
       "                        <td id=\"T_0d719be4_7802_11ea_83b2_701ce71031efrow1_col2\" class=\"data row1 col2\" >7676</td>\n",
       "                        <td id=\"T_0d719be4_7802_11ea_83b2_701ce71031efrow1_col3\" class=\"data row1 col3\" >20000</td>\n",
       "                        <td id=\"T_0d719be4_7802_11ea_83b2_701ce71031efrow1_col4\" class=\"data row1 col4\" >58764</td>\n",
       "                        <td id=\"T_0d719be4_7802_11ea_83b2_701ce71031efrow1_col5\" class=\"data row1 col5\" >309</td>\n",
       "                        <td id=\"T_0d719be4_7802_11ea_83b2_701ce71031efrow1_col6\" class=\"data row1 col6\" >28.30%</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                                <td id=\"T_0d719be4_7802_11ea_83b2_701ce71031efrow2_col0\" class=\"data row2 col0\" >本科</td>\n",
       "                        <td id=\"T_0d719be4_7802_11ea_83b2_701ce71031efrow2_col1\" class=\"data row2 col1\" >21596</td>\n",
       "                        <td id=\"T_0d719be4_7802_11ea_83b2_701ce71031efrow2_col2\" class=\"data row2 col2\" >5250</td>\n",
       "                        <td id=\"T_0d719be4_7802_11ea_83b2_701ce71031efrow2_col3\" class=\"data row2 col3\" >17500</td>\n",
       "                        <td id=\"T_0d719be4_7802_11ea_83b2_701ce71031efrow2_col4\" class=\"data row2 col4\" >57466</td>\n",
       "                        <td id=\"T_0d719be4_7802_11ea_83b2_701ce71031efrow2_col5\" class=\"data row2 col5\" >666</td>\n",
       "                        <td id=\"T_0d719be4_7802_11ea_83b2_701ce71031efrow2_col6\" class=\"data row2 col6\" >60.99%</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                                <td id=\"T_0d719be4_7802_11ea_83b2_701ce71031efrow3_col0\" class=\"data row3 col0\" >大专</td>\n",
       "                        <td id=\"T_0d719be4_7802_11ea_83b2_701ce71031efrow3_col1\" class=\"data row3 col1\" >10832</td>\n",
       "                        <td id=\"T_0d719be4_7802_11ea_83b2_701ce71031efrow3_col2\" class=\"data row3 col2\" >2870</td>\n",
       "                        <td id=\"T_0d719be4_7802_11ea_83b2_701ce71031efrow3_col3\" class=\"data row3 col3\" >8500</td>\n",
       "                        <td id=\"T_0d719be4_7802_11ea_83b2_701ce71031efrow3_col4\" class=\"data row3 col4\" >30140</td>\n",
       "                        <td id=\"T_0d719be4_7802_11ea_83b2_701ce71031efrow3_col5\" class=\"data row3 col5\" >72</td>\n",
       "                        <td id=\"T_0d719be4_7802_11ea_83b2_701ce71031efrow3_col6\" class=\"data row3 col6\" >6.59%</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                                <td id=\"T_0d719be4_7802_11ea_83b2_701ce71031efrow4_col0\" class=\"data row4 col0\" >高中</td>\n",
       "                        <td id=\"T_0d719be4_7802_11ea_83b2_701ce71031efrow4_col1\" class=\"data row4 col1\" >8375</td>\n",
       "                        <td id=\"T_0d719be4_7802_11ea_83b2_701ce71031efrow4_col2\" class=\"data row4 col2\" >4750</td>\n",
       "                        <td id=\"T_0d719be4_7802_11ea_83b2_701ce71031efrow4_col3\" class=\"data row4 col3\" >8375</td>\n",
       "                        <td id=\"T_0d719be4_7802_11ea_83b2_701ce71031efrow4_col4\" class=\"data row4 col4\" >12000</td>\n",
       "                        <td id=\"T_0d719be4_7802_11ea_83b2_701ce71031efrow4_col5\" class=\"data row4 col5\" >2</td>\n",
       "                        <td id=\"T_0d719be4_7802_11ea_83b2_701ce71031efrow4_col6\" class=\"data row4 col6\" >0.18%</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                                <td id=\"T_0d719be4_7802_11ea_83b2_701ce71031efrow5_col0\" class=\"data row5 col0\" >初中及以下</td>\n",
       "                        <td id=\"T_0d719be4_7802_11ea_83b2_701ce71031efrow5_col1\" class=\"data row5 col1\" >5250</td>\n",
       "                        <td id=\"T_0d719be4_7802_11ea_83b2_701ce71031efrow5_col2\" class=\"data row5 col2\" >5250</td>\n",
       "                        <td id=\"T_0d719be4_7802_11ea_83b2_701ce71031efrow5_col3\" class=\"data row5 col3\" >5250</td>\n",
       "                        <td id=\"T_0d719be4_7802_11ea_83b2_701ce71031efrow5_col4\" class=\"data row5 col4\" >5250</td>\n",
       "                        <td id=\"T_0d719be4_7802_11ea_83b2_701ce71031efrow5_col5\" class=\"data row5 col5\" >1</td>\n",
       "                        <td id=\"T_0d719be4_7802_11ea_83b2_701ce71031efrow5_col6\" class=\"data row5 col6\" >0.09%</td>\n",
       "            </tr>\n",
       "    </tbody></table>"
      ],
      "text/plain": [
       "<pandas.io.formats.style.Styler at 0x1ef00aae0c8>"
      ]
     },
     "execution_count": 38,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "data_edu=get_sub_stats_by_col(data[data.edu.isin(['初中及以下','高中','大专','本科','硕士','博士'])], 'edu')\n",
    "apply_style(data_edu)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 39,
   "metadata": {},
   "outputs": [],
   "source": [
    "salary_associate=data[data.edu=='大专'].monthly_salary\n",
    "salary_bachelor=data[data.edu=='本科'].monthly_salary\n",
    "salary_master=data[data.edu=='硕士'].monthly_salary\n",
    "salary_phd=data[data.edu=='博士'].monthly_salary"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  },
  {
   "cell_type": "code",
   "execution_count": 40,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "大专，本科，硕士，博士的平均工资分别是11720，20646，22922，26125。中位数分别是8750， 17500，21500， 27500。\n"
     ]
    }
   ],
   "source": [
    "print('大专，本科，硕士，博士的平均工资分别是{:.0f}，{:.0f}，{:.0f}，{:.0f}。中位数分别是{:.0f}， {:.0f}，{:.0f}， {:.0f}。'.format(\n",
    "    salary_associate.mean(),salary_bachelor.mean(),salary_master.mean(),salary_phd.mean(),\n",
    "    salary_associate.median(),salary_bachelor.median(),salary_master.median(),salary_phd.median()))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 41,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "F_onewayResult(statistic=1.2796448756916412, pvalue=0.26049410113318994)"
      ]
     },
     "execution_count": 41,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "stats.f_oneway(salary_phd, salary_master)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 42,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "F_onewayResult(statistic=2.989612838229412, pvalue=0.08484283607531536)"
      ]
     },
     "execution_count": 42,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "stats.f_oneway(salary_master, salary_bachelor)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 43,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "F_onewayResult(statistic=15.37792110752103, pvalue=0.00011688101671031372)"
      ]
     },
     "execution_count": 43,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "stats.f_oneway(salary_bachelor, salary_associate)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "经过Oneway Anova Test，证明从大专到博士，学历每提高一级，工资都有显著的提高。"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 44,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "\n",
    "order=['大专','本科','硕士','博士']\n",
    "a=sns.boxplot(y='edu',x='monthly_salary',order=order,data=data[data.edu.isin(order)], orient='h')\n",
    "plt.annotate('https://github.com/juwikuang/job_survey', xy=(0.5,1.5), xytext=(2, 1.55))\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# 工作经验 Working Experience"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 45,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<style  type=\"text/css\" >\n",
       "</style><table id=\"T_0da30c4c_7802_11ea_a273_701ce71031ef\" ><thead>    <tr>        <th class=\"col_heading level0 col0\" >experience</th>        <th class=\"col_heading level0 col1\" >salary_mean</th>        <th class=\"col_heading level0 col2\" >salary_95_min</th>        <th class=\"col_heading level0 col3\" >salary_median</th>        <th class=\"col_heading level0 col4\" >salary_95_max</th>        <th class=\"col_heading level0 col5\" >head_count</th>        <th class=\"col_heading level0 col6\" >percentage</th>    </tr></thead><tbody>\n",
       "                <tr>\n",
       "                                <td id=\"T_0da30c4c_7802_11ea_a273_701ce71031efrow0_col0\" class=\"data row0 col0\" >5_10</td>\n",
       "                        <td id=\"T_0da30c4c_7802_11ea_a273_701ce71031efrow0_col1\" class=\"data row0 col1\" >36375</td>\n",
       "                        <td id=\"T_0da30c4c_7802_11ea_a273_701ce71031efrow0_col2\" class=\"data row0 col2\" >12500</td>\n",
       "                        <td id=\"T_0da30c4c_7802_11ea_a273_701ce71031efrow0_col3\" class=\"data row0 col3\" >33958</td>\n",
       "                        <td id=\"T_0da30c4c_7802_11ea_a273_701ce71031efrow0_col4\" class=\"data row0 col4\" >59833</td>\n",
       "                        <td id=\"T_0da30c4c_7802_11ea_a273_701ce71031efrow0_col5\" class=\"data row0 col5\" >82</td>\n",
       "                        <td id=\"T_0da30c4c_7802_11ea_a273_701ce71031efrow0_col6\" class=\"data row0 col6\" >7.04%</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                                <td id=\"T_0da30c4c_7802_11ea_a273_701ce71031efrow1_col0\" class=\"data row1 col0\" >10+</td>\n",
       "                        <td id=\"T_0da30c4c_7802_11ea_a273_701ce71031efrow1_col1\" class=\"data row1 col1\" >28250</td>\n",
       "                        <td id=\"T_0da30c4c_7802_11ea_a273_701ce71031efrow1_col2\" class=\"data row1 col2\" >26500</td>\n",
       "                        <td id=\"T_0da30c4c_7802_11ea_a273_701ce71031efrow1_col3\" class=\"data row1 col3\" >28250</td>\n",
       "                        <td id=\"T_0da30c4c_7802_11ea_a273_701ce71031efrow1_col4\" class=\"data row1 col4\" >30000</td>\n",
       "                        <td id=\"T_0da30c4c_7802_11ea_a273_701ce71031efrow1_col5\" class=\"data row1 col5\" >2</td>\n",
       "                        <td id=\"T_0da30c4c_7802_11ea_a273_701ce71031efrow1_col6\" class=\"data row1 col6\" >0.17%</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                                <td id=\"T_0da30c4c_7802_11ea_a273_701ce71031efrow2_col0\" class=\"data row2 col0\" >3_5</td>\n",
       "                        <td id=\"T_0da30c4c_7802_11ea_a273_701ce71031efrow2_col1\" class=\"data row2 col1\" >24669</td>\n",
       "                        <td id=\"T_0da30c4c_7802_11ea_a273_701ce71031efrow2_col2\" class=\"data row2 col2\" >8500</td>\n",
       "                        <td id=\"T_0da30c4c_7802_11ea_a273_701ce71031efrow2_col3\" class=\"data row2 col3\" >22500</td>\n",
       "                        <td id=\"T_0da30c4c_7802_11ea_a273_701ce71031efrow2_col4\" class=\"data row2 col4\" >45800</td>\n",
       "                        <td id=\"T_0da30c4c_7802_11ea_a273_701ce71031efrow2_col5\" class=\"data row2 col5\" >288</td>\n",
       "                        <td id=\"T_0da30c4c_7802_11ea_a273_701ce71031efrow2_col6\" class=\"data row2 col6\" >24.72%</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                                <td id=\"T_0da30c4c_7802_11ea_a273_701ce71031efrow3_col0\" class=\"data row3 col0\" >1_3</td>\n",
       "                        <td id=\"T_0da30c4c_7802_11ea_a273_701ce71031efrow3_col1\" class=\"data row3 col1\" >20463</td>\n",
       "                        <td id=\"T_0da30c4c_7802_11ea_a273_701ce71031efrow3_col2\" class=\"data row3 col2\" >6650</td>\n",
       "                        <td id=\"T_0da30c4c_7802_11ea_a273_701ce71031efrow3_col3\" class=\"data row3 col3\" >17500</td>\n",
       "                        <td id=\"T_0da30c4c_7802_11ea_a273_701ce71031efrow3_col4\" class=\"data row3 col4\" >37500</td>\n",
       "                        <td id=\"T_0da30c4c_7802_11ea_a273_701ce71031efrow3_col5\" class=\"data row3 col5\" >304</td>\n",
       "                        <td id=\"T_0da30c4c_7802_11ea_a273_701ce71031efrow3_col6\" class=\"data row3 col6\" >26.09%</td>\n",
       "            </tr>\n",
       "            <tr>\n",
       "                                <td id=\"T_0da30c4c_7802_11ea_a273_701ce71031efrow4_col0\" class=\"data row4 col0\" ></td>\n",
       "                        <td id=\"T_0da30c4c_7802_11ea_a273_701ce71031efrow4_col1\" class=\"data row4 col1\" >17386</td>\n",
       "                        <td id=\"T_0da30c4c_7802_11ea_a273_701ce71031efrow4_col2\" class=\"data row4 col2\" >5250</td>\n",
       "                        <td id=\"T_0da30c4c_7802_11ea_a273_701ce71031efrow4_col3\" class=\"data row4 col3\" >15250</td>\n",
       "                        <td id=\"T_0da30c4c_7802_11ea_a273_701ce71031efrow4_col4\" class=\"data row4 col4\" >44183</td>\n",
       "                        <td id=\"T_0da30c4c_7802_11ea_a273_701ce71031efrow4_col5\" class=\"data row4 col5\" >489</td>\n",
       "                        <td id=\"T_0da30c4c_7802_11ea_a273_701ce71031efrow4_col6\" class=\"data row4 col6\" >41.97%</td>\n",
       "            </tr>\n",
       "    </tbody></table>"
      ],
      "text/plain": [
       "<pandas.io.formats.style.Styler at 0x1ef06f40e08>"
      ]
     },
     "execution_count": 45,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "data_experience=get_sub_stats_by_col(data, 'experience')\n",
    "apply_style(data_experience)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 46,
   "metadata": {},
   "outputs": [],
   "source": [
    "salary_we_10=data[data.experience=='10+'].monthly_salary\n",
    "salary_we_5_10=data[data.experience=='5_10'].monthly_salary\n",
    "salary_we_3_5=data[data.experience=='3_5'].monthly_salary\n",
    "salary_we_1_3=data[data.experience=='1_3'].monthly_salary\n",
    "salary_we_no=data[data.experience=='no'].monthly_salary"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 47,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "\n",
    "order=['10+','5_10','3_5','1_3']\n",
    "sns.boxplot(y='experience',x='monthly_salary',order=order,data=data[data.experience.isin(order)], orient='h')\n",
    "plt.annotate('https://github.com/juwikuang/job_survey', xy=(1.5,1.5), xytext=(1.55, 1.55))\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# 公司 Company"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## 公司性质 Company Type"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 48,
   "metadata": {},
   "outputs": [
    {
     "ename": "KeyError",
     "evalue": "'company_type'",
     "output_type": "error",
     "traceback": [
      "\u001b[1;31m---------------------------------------------------------------------------\u001b[0m",
      "\u001b[1;31mKeyError\u001b[0m                                  Traceback (most recent call last)",
      "\u001b[1;32mC:\\ProgramData\\Anaconda3\\lib\\site-packages\\pandas\\core\\indexes\\base.py\u001b[0m in \u001b[0;36mget_loc\u001b[1;34m(self, key, method, tolerance)\u001b[0m\n\u001b[0;32m   2645\u001b[0m             \u001b[1;32mtry\u001b[0m\u001b[1;33m:\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[1;32m-> 2646\u001b[1;33m                 \u001b[1;32mreturn\u001b[0m \u001b[0mself\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0m_engine\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mget_loc\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mkey\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0m\u001b[0;32m   2647\u001b[0m             \u001b[1;32mexcept\u001b[0m \u001b[0mKeyError\u001b[0m\u001b[1;33m:\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n",
      "\u001b[1;32mpandas\\_libs\\index.pyx\u001b[0m in \u001b[0;36mpandas._libs.index.IndexEngine.get_loc\u001b[1;34m()\u001b[0m\n",
      "\u001b[1;32mpandas\\_libs\\index.pyx\u001b[0m in \u001b[0;36mpandas._libs.index.IndexEngine.get_loc\u001b[1;34m()\u001b[0m\n",
      "\u001b[1;32mpandas\\_libs\\hashtable_class_helper.pxi\u001b[0m in \u001b[0;36mpandas._libs.hashtable.PyObjectHashTable.get_item\u001b[1;34m()\u001b[0m\n",
      "\u001b[1;32mpandas\\_libs\\hashtable_class_helper.pxi\u001b[0m in \u001b[0;36mpandas._libs.hashtable.PyObjectHashTable.get_item\u001b[1;34m()\u001b[0m\n",
      "\u001b[1;31mKeyError\u001b[0m: 'company_type'",
      "\nDuring handling of the above exception, another exception occurred:\n",
      "\u001b[1;31mKeyError\u001b[0m                                  Traceback (most recent call last)",
      "\u001b[1;32m<ipython-input-48-8570df4a4801>\u001b[0m in \u001b[0;36m<module>\u001b[1;34m\u001b[0m\n\u001b[1;32m----> 1\u001b[1;33m \u001b[0mdata_company_type\u001b[0m\u001b[1;33m=\u001b[0m\u001b[0mget_sub_stats_by_col\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mdata\u001b[0m\u001b[1;33m,\u001b[0m\u001b[1;34m'company_type'\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0m\u001b[0;32m      2\u001b[0m \u001b[0mapply_style\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mdata_company_type\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n",
      "\u001b[1;32m<ipython-input-15-d1d14471b9f6>\u001b[0m in \u001b[0;36mget_sub_stats_by_col\u001b[1;34m(data, col)\u001b[0m\n\u001b[0;32m      1\u001b[0m \u001b[1;31m#Common Functions\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m      2\u001b[0m \u001b[1;32mdef\u001b[0m \u001b[0mget_sub_stats_by_col\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mdata\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0mcol\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m:\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[1;32m----> 3\u001b[1;33m     \u001b[0mcategories\u001b[0m\u001b[1;33m=\u001b[0m\u001b[0mdata\u001b[0m\u001b[1;33m[\u001b[0m\u001b[0mcol\u001b[0m\u001b[1;33m]\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0munique\u001b[0m\u001b[1;33m(\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0m\u001b[0;32m      4\u001b[0m     \u001b[0msalary_mean\u001b[0m\u001b[1;33m=\u001b[0m\u001b[1;33m[\u001b[0m\u001b[1;33m]\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m      5\u001b[0m     \u001b[0msalary_95_min\u001b[0m\u001b[1;33m=\u001b[0m\u001b[1;33m[\u001b[0m\u001b[1;33m]\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n",
      "\u001b[1;32mC:\\ProgramData\\Anaconda3\\lib\\site-packages\\pandas\\core\\frame.py\u001b[0m in \u001b[0;36m__getitem__\u001b[1;34m(self, key)\u001b[0m\n\u001b[0;32m   2798\u001b[0m             \u001b[1;32mif\u001b[0m \u001b[0mself\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mcolumns\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mnlevels\u001b[0m \u001b[1;33m>\u001b[0m \u001b[1;36m1\u001b[0m\u001b[1;33m:\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m   2799\u001b[0m                 \u001b[1;32mreturn\u001b[0m \u001b[0mself\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0m_getitem_multilevel\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mkey\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[1;32m-> 2800\u001b[1;33m             \u001b[0mindexer\u001b[0m \u001b[1;33m=\u001b[0m \u001b[0mself\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mcolumns\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mget_loc\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mkey\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0m\u001b[0;32m   2801\u001b[0m             \u001b[1;32mif\u001b[0m \u001b[0mis_integer\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mindexer\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m:\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m   2802\u001b[0m                 \u001b[0mindexer\u001b[0m \u001b[1;33m=\u001b[0m \u001b[1;33m[\u001b[0m\u001b[0mindexer\u001b[0m\u001b[1;33m]\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n",
      "\u001b[1;32mC:\\ProgramData\\Anaconda3\\lib\\site-packages\\pandas\\core\\indexes\\base.py\u001b[0m in \u001b[0;36mget_loc\u001b[1;34m(self, key, method, tolerance)\u001b[0m\n\u001b[0;32m   2646\u001b[0m                 \u001b[1;32mreturn\u001b[0m \u001b[0mself\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0m_engine\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mget_loc\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mkey\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m   2647\u001b[0m             \u001b[1;32mexcept\u001b[0m \u001b[0mKeyError\u001b[0m\u001b[1;33m:\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[1;32m-> 2648\u001b[1;33m                 \u001b[1;32mreturn\u001b[0m \u001b[0mself\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0m_engine\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mget_loc\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mself\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0m_maybe_cast_indexer\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mkey\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0m\u001b[0;32m   2649\u001b[0m         \u001b[0mindexer\u001b[0m \u001b[1;33m=\u001b[0m \u001b[0mself\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mget_indexer\u001b[0m\u001b[1;33m(\u001b[0m\u001b[1;33m[\u001b[0m\u001b[0mkey\u001b[0m\u001b[1;33m]\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0mmethod\u001b[0m\u001b[1;33m=\u001b[0m\u001b[0mmethod\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0mtolerance\u001b[0m\u001b[1;33m=\u001b[0m\u001b[0mtolerance\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m   2650\u001b[0m         \u001b[1;32mif\u001b[0m \u001b[0mindexer\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mndim\u001b[0m \u001b[1;33m>\u001b[0m \u001b[1;36m1\u001b[0m \u001b[1;32mor\u001b[0m \u001b[0mindexer\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0msize\u001b[0m \u001b[1;33m>\u001b[0m \u001b[1;36m1\u001b[0m\u001b[1;33m:\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n",
      "\u001b[1;32mpandas\\_libs\\index.pyx\u001b[0m in \u001b[0;36mpandas._libs.index.IndexEngine.get_loc\u001b[1;34m()\u001b[0m\n",
      "\u001b[1;32mpandas\\_libs\\index.pyx\u001b[0m in \u001b[0;36mpandas._libs.index.IndexEngine.get_loc\u001b[1;34m()\u001b[0m\n",
      "\u001b[1;32mpandas\\_libs\\hashtable_class_helper.pxi\u001b[0m in \u001b[0;36mpandas._libs.hashtable.PyObjectHashTable.get_item\u001b[1;34m()\u001b[0m\n",
      "\u001b[1;32mpandas\\_libs\\hashtable_class_helper.pxi\u001b[0m in \u001b[0;36mpandas._libs.hashtable.PyObjectHashTable.get_item\u001b[1;34m()\u001b[0m\n",
      "\u001b[1;31mKeyError\u001b[0m: 'company_type'"
     ]
    }
   ],
   "source": [
    "data_company_type=get_sub_stats_by_col(data,'company_type')\n",
    "apply_style(data_company_type)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "us_eu是欧美外企，startup是创业公司，listed是上市公司，state是国企，private是私企，foreign是非欧美外企，其他不足1000个样本的不管了。"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## 公司规模 Company Size"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": [
    "data_company_size=get_sub_stats_by_col(data,'company_size')\n",
    "apply_style(data_company_size)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "公司越大，工资越高"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## 行业 Industry"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": [
    "data_industry=get_sub_stats_by_col(data,'industry')\n",
    "apply_style(data_industry)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.7.4"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 4
}
